草庐IT

Android 异步操作库 RxJava

全部标签

javascript - Ember.js - 模型中的异步调用 find() 方法

我已经在我的Property模型上实现了find()和findAll()方法。这两种方法都对API进行异步调用。findAll()在连接我的家庭路线的导出时被调用,并且工作正常。find()由Ember.js在连接我的属性路由的导出时调用。请注意,当通过操作导航到属性路由时不会调用find(),但会在您通过URL直接转到路由时调用。这是我的路由器:App.Router=Ember.Router.extend({root:Ember.Route.extend({showProperty:Ember.Route.transitionTo('property'),home:Ember.Rou

javascript - 如何检查异步加载的脚本是否已在 javascript 中完成加载

使用javascript异步下载另一个javascript文件。我知道这可以通过在页面上插入一个新的脚本标签来完成,并将src属性设置为文件url。脚本下载完成后,我还需要运行一些代码。我一直在使用yepnope为此,他们提供了在脚本完成下载和执行时执行的“回调”。这是如何实现的?谢谢! 最佳答案 大多数JS加载器通过注入(inject)来做到这一点标记到DOM,并绑定(bind)它的onload您提供的功能的事件。yepnope使用相同的方法,您可以简单地从其sourcecode观察到这一点.函数injectJs使用doc.cre

javascript - 如何使不对集合进行操作的 jQuery 插件函数可调用以供独立使用

我读了jquerydocumentationofpluginauthoring并且对此很熟悉。但是,给出的示例总是对一组先前匹配的元素进行操作。我想创建一个可以同时执行这两项操作的函数://exampleusageofmyto-be-createdpluginfunction//thisisthewaydescribedinthedocs,andIknowhowtodothat$("a").myFunction()//butIalsowanttobeabletocallthefunctionwithoutacollection:$.myFunction();如果调用$.myFuncti

javascript - 不带导出的 TypeScript 声明的异步加载

我有许多jQuery插件,我想在TypeScript中使用AMD模式加载它们。例如,我可能有这样的结构:/lib/jquery.myplugin.js/app.ts该插件只是扩展了jQuery。它不提供新的顶级函数或变量。一个例子可能是://jquery.myplugin.jsjQuery.fn.myExample=function(){...}相应的jquery.myplugin.d.ts文件如下所示:interfaceJQuery{myExample();}所以现在在app.ts中我可以调用类似$('#my-element').myExample()的东西.请注意,这假设我已经加载

javascript - 使用 jQuery 的 $.ajax 异步更新 Bootstrap 进度条

我有一个脚本在我的本地网络上循环遍历IP,检查那里是否有任何东西。每次迭代,我都会提交一个AJAX请求以使用cURL获取HTTP状态代码,该代码会返回到我的Javascript。我已经构建了计算进度条应该在哪里的函数,但是它只会在整个脚本执行完毕后更新进度条。这是我到目前为止所拥有的(我在这个例子中只使用0-23,因为我在199.235.130.22上,我返回'200')functionupdateProgress(percentage){document.getElementById('progressBar').style.width=percentage+'%';$('#prog

javascript - 在 durandal 中长时间运行负载操作

我正在尝试找出运行长时间运行的加载操作的最佳位置是使用Durandal。据我所知,加载数据的一般建议是在ViewModel的activate方法中,这是我通常做的-类似于:viewModel.activate=function(){varloadPromise=myService.loadData();return$.when(loadPromise).then(function(loadedData){viewModel.data(data);});};我知道如果我不返回此处的promise,那么绑定(bind)通常会出现问题-如thisquestionandanswerindica

javascript - Hammer.js 单击在点击操作后点击后面的 DOM 元素上触发

我使用Hammer.js来检测移动设备上的触摸、点击、滑动等。我有一个交互,在点击时,我隐藏点击的内容(可能还有parent)并在其位置显示一些其他内容(更改屏幕-类似功能)。问题是新出现的内容可能绑定(bind)了自己的事件,或者可能会在点击时进行本地交互(例如标签切换复选框、文本输入被聚焦)。如果组件在点击时立即隐藏/显示,则400毫秒的点击事件仍在运行,然后在下面的元素上触发。在移动设备上查看这个jsfiddle:http://jsfiddle.net/annam/xGJZL/http://jsfiddle.net/annam/xGJZL/embedded/result/.che

javascript - 使用 Jasmine 测试异步回调

我正在使用Jasmine2.1。我正在尝试使用Jasmine2.1来测试模块。我的模块之一具有异步执行代码的功能。当应用程序完成执行时,我需要测试函数的结果。有没有办法做到这一点?目前,我的模块看起来像这样:varotherModule=require('otherModule');functionMyModule(){}MyModule.prototype.state='';MyModule.prototype.execute=function(callback){try{this.state='Executing';varm=newotherModule.Execute(funct

javascript - 将 DOM 操作与 Angular Controller 分离——需要最佳实践

为了寻找构建Angular应用程序的“最佳”方式,我找到了几篇最佳实践文章。有了这个输入,我这样做了:angular.module('xApp',[])//.....someservices,factories,controllers,.....directive('dirNotification',[functiondirNotification(){return{scope:{},templateUrl:'xNotification.html',replace:true,controller:'CtrlNotification',link:function($scope){//if

javascript - 基准异步代码 (Benchmark.js, Node.js)

我想使用Benchmark.js模块来测试一些用node.js编写的异步代码。具体来说,我想向两台服务器(一台用Node编写,一台用PHP编写)发出约10,000个请求,并跟踪每台服务器完成所有请求所需的时间。我计划使用Benchmark编写一个简单的Node脚本来触发这些请求,但我对如何将它与异步代码一起使用感到有点困惑。通常在Node模块中,当您的异步代码完成时,或者从函数返回Promise等时,您会调用某种回调。但是对于Benchmark,从我在文档中阅读的所有内容来看,它似乎并不完全处理异步。有谁知道我应该做什么或看什么?如果需要,我可以手动编写基准测试;这似乎是一个足够常见的